Many enterprise applications use custom credentials such as a user name and password or leverage some other credentials mechanism for security purposes. When interoperation with external applications is needed, a user may be required to enter the credentials for the external application(s). This creates challenges for security (like users keeping their passwords in unsafe locations) and system management.
Users not having to remember multiple credentials—especially with hard to remember strong passwords—is preferred both by users and system administrators. One solution that has been tried is Single Sign On (SSO) approach, which attempts to mitigate the credential challenge by storing the credentials mapped to a particular user. However, these technologies have hard dependencies in the underlying authentication mechanism.